package com.loklok.code.confuse.model;

import java.io.Serializable;
import java.util.List;

/**
 *   Method: getUserById
 *     Parameter Type: java.lang.Long
 *     Return Type: com.example.User
 *     Found Annotation: org.springframework.web.bind.annotation.GetMapping
 *       URL Path: "/users/{id}"
 */

public class FeignInterfaceInfo implements Serializable {

    private String methodName;
    private String parameterType;

    private String methodAnnotationName;
    private String urlPath;

    private String feignAnnotationName;

    private String feignClassName;

    private String returnType;        // 如 com.example.ResultResponse<com.example.User>
    private String returnBaseType;    // 如 ResultResponse
    private List<String> returnGenericTypes; // 如 ["com.example.User"]

    public String getMethodName() {
        return methodName;
    }

    public void setMethodName(String methodName) {
        this.methodName = methodName;
    }

    public String getParameterType() {
        return parameterType;
    }

    public void setParameterType(String parameterType) {
        this.parameterType = parameterType;
    }

    public String getMethodAnnotationName() {
        return methodAnnotationName;
    }

    public void setMethodAnnotationName(String methodAnnotationName) {
        this.methodAnnotationName = methodAnnotationName;
    }

    public String getUrlPath() {
        return urlPath;
    }

    public void setUrlPath(String urlPath) {
        this.urlPath = urlPath;
    }

    public String getFeignAnnotationName() {
        return feignAnnotationName;
    }

    public void setFeignAnnotationName(String feignAnnotationName) {
        this.feignAnnotationName = feignAnnotationName;
    }

    public String getReturnType() {
        return returnType;
    }

    public void setReturnType(String returnType) {
        this.returnType = returnType;
    }

    public String getReturnBaseType() {
        return returnBaseType;
    }

    public void setReturnBaseType(String returnBaseType) {
        this.returnBaseType = returnBaseType;
    }

    public List<String> getReturnGenericTypes() {
        return returnGenericTypes;
    }

    public void setReturnGenericTypes(List<String> returnGenericTypes) {
        this.returnGenericTypes = returnGenericTypes;
    }

    public String getFeignClassName() {
        return feignClassName;
    }

    public void setFeignClassName(String feignClassName) {
        this.feignClassName = feignClassName;
    }
}
